package com.ruoyi.mp.service;

import com.ruoyi.mp.domain.MpUser;
import me.chanjar.weixin.common.error.WxErrorException;

import java.util.List;

/**
 * 公众号粉丝Service接口
 *
 * @author ruoyi
 * @date 2023-11-18
 */
public interface IMpUserService
{
    //更新粉丝列表
    public int insertListMpUser(List<MpUser> mpUsers);
    /**
     * 查询公众号粉丝
     *
     * @param id 公众号粉丝主键
     * @return 公众号粉丝
     */
    public MpUser selectMpUserById(Long id);

    /**
     * 查询公众号粉丝列表
     *
     * @param mpUser 公众号粉丝
     * @return 公众号粉丝集合
     */
    public List<MpUser> selectMpUserList(MpUser mpUser);

    /**
     * 新增公众号粉丝
     *
     * @param mpUser 公众号粉丝
     * @return 结果
     */
    public int insertMpUser(MpUser mpUser);

    /**
     * 修改公众号粉丝
     *
     * @param mpUser 公众号粉丝
     * @return 结果
     */
    public int updateMpUser(MpUser mpUser) throws WxErrorException;

    /**
     * 批量删除公众号粉丝
     *
     * @param ids 需要删除的公众号粉丝主键集合
     * @return 结果
     */
    public int deleteMpUserByIds(Long[] ids);

    /**
     * 删除公众号粉丝信息
     *
     * @param id 公众号粉丝主键
     * @return 结果
     */
    public int deleteMpUserById(Long id);

    /**
     * 通过数组id拉黑用户
     *
     * @param ids 公众号粉丝主键
     * @return 结果
     */
    public int blackFans(Long[] ids,Long accountId) throws WxErrorException;

    /**
     * 通过数组id取消拉黑用户
     *
     * @param ids 公众号粉丝主键
     * @return 结果
     */
    public int cansleBlackFans(Long[] ids,Long accountId) throws WxErrorException;

    /**
     * 批量插入黑名单
     *
     * @param openidList
     * @return 结果
     */
    public  int pushToBlacklist(List<String> openidList,String appId);
}
